package com.lazily.map_;


import java.util.Properties;

/**
 * @Author:  GZQ
 * @date:  2025/6/5 23:57
 * @description: Map 接口实现类-Properties
 * @version: 1.0
 */


@SuppressWarnings({"all"})
public class Properties_ {
	// 程序入口
	public static void main(String[] args) {
	/*
		1. Properties类继承自Hashtable类并且实现了Map接口，也是使用一种键值对的形式来保存数据。
		2. 他的使用特点和Hashtable类似。
		3. Properties还可以用于从xxx.properties文件中，加载数据到Properties类对象，并进行读取和修改。
		4. 说明：工作后xxx.properties文件通常作为配置文件。
	 */

		// 解析
		// 1. Properties 继承 Hashtable
		// 2. 可以通过 k-v 存放数据, 当然 key 和 value 不能为 null
		// 增加
		Properties properties = new Properties();
		properties.put("john", 100);
		// properties.put(null, "abc"); // 抛出 空指针异常
		// properties.put("lic", null); // 抛出 空指针异常
		properties.put("lucy", 100);
		properties.put("jack", 100);
		properties.put("jack", 60); // 如果有相同的key, value被替换

		System.out.println("properties=" + properties);

		// 通过k 获取对应值
		System.out.println(properties.get("jack")); // 88

		// 删除
		properties.remove("jack");
		System.out.println("properties=" + properties);

		// 修改
		properties.put("lucy", "懒洋洋");
		System.out.println("properties=" + properties);

	}
}



